Bristlecone: A Language for Robust Software Systems
Identifieur interne : 000760 ( Main/Exploration ); précédent : 000759; suivant : 000761Bristlecone: A Language for Robust Software Systems
Auteurs : Brian Demsky ; Alokika DashSource :
- Lecture Notes in Computer Science [ 0302-9743 ] ; 2008.
English descriptors
- Teeft :
- Active task invocations, Agexp, Benchmark, Bristlecone, Bristlecone compiler, Bristlecone language, Bristlecone runtime, Bristlecone version, Bristlecone versions, Browser, Chat room, Chat server, Conceptual operations, Conceptual state, Crawler, Data dependences, Data structures, Demsky, Developer, Failure injection code, Failure injection strategy, Functionality, Guard expression, Incoming connection, Incoming connections, Initialized, International conference, Invocation, Iterators, Java, Java version, Java versions, Logger, Logger object, Logrequest, Logrequest task, Multiple implementations, Object iterators, Other tasks, Parameter, Parameter objects, Parameter sets, Programming language, Programming languages, Query, Query object, Queue, Readrequest, Readrequest task, Robust, Robust software systems, Runtime, Runtime system, Same connection, Sendpage, Sendpage task, Server, Server example, Serversocket, Serversocket object, Socket object, Software, Software engineering, Software errors, Software faults, Software system, Software systems, Startup, Startup task, Tagname, Task declarations, Task invocation, Task invocations, Task queue, Transactional, Webrequest, Webrequest object, Workload.
Abstract
Abstract: We present Bristlecone, a programming language for robust software systems. Bristlecone applications have two components: a high-level organization description that specifies how the application’s conceptual operations interact, and a low-level operational description that specifies the sequence of instructions that comprise an individual conceptual operation. Bristlecone uses the high-level organization description to recover the software system from an error to a consistent state and to reason how to safely continue the software system’s execution after the error. We have implemented a compiler and runtime for Bristlecone.We have evaluated this implementation on three benchmark applications: a web crawler, a web server, and a multi-room chat server. We developed both a Bristlecone version and a Java version of each benchmark application. We used injected failures to evaluate the robustness of each version of the application. We found that the Bristlecone versions of the benchmark applications more successfully survived the injected failures.
Url:
DOI: 10.1007/978-3-540-70592-5_21
Affiliations:
Links toward previous steps (curation, corpus...)
- to stream Istex, to step Corpus: 000911
- to stream Istex, to step Curation: 000864
- to stream Istex, to step Checkpoint: 000584
- to stream Main, to step Merge: 000760
- to stream Main, to step Curation: 000760
Le document en format XML
<record><TEI wicri:istexFullTextTei="biblStruct"><teiHeader><fileDesc><titleStmt><title xml:lang="en">Bristlecone: A Language for Robust Software Systems</title>
<author><name sortKey="Demsky, Brian" sort="Demsky, Brian" uniqKey="Demsky B" first="Brian" last="Demsky">Brian Demsky</name>
</author>
<author><name sortKey="Dash, Alokika" sort="Dash, Alokika" uniqKey="Dash A" first="Alokika" last="Dash">Alokika Dash</name>
</author>
</titleStmt>
<publicationStmt><idno type="wicri:source">ISTEX</idno>
<idno type="RBID">ISTEX:563DA7D516DC4282C201CD70161528738EF969FA</idno>
<date when="2008" year="2008">2008</date>
<idno type="doi">10.1007/978-3-540-70592-5_21</idno>
<idno type="url">https://api.istex.fr/document/563DA7D516DC4282C201CD70161528738EF969FA/fulltext/pdf</idno>
<idno type="wicri:Area/Istex/Corpus">000911</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Corpus" wicri:corpus="ISTEX">000911</idno>
<idno type="wicri:Area/Istex/Curation">000864</idno>
<idno type="wicri:Area/Istex/Checkpoint">000584</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Checkpoint">000584</idno>
<idno type="wicri:doubleKey">0302-9743:2008:Demsky B:bristlecone:a:language</idno>
<idno type="wicri:Area/Main/Merge">000760</idno>
<idno type="wicri:Area/Main/Curation">000760</idno>
<idno type="wicri:Area/Main/Exploration">000760</idno>
</publicationStmt>
<sourceDesc><biblStruct><analytic><title level="a" type="main" xml:lang="en">Bristlecone: A Language for Robust Software Systems</title>
<author><name sortKey="Demsky, Brian" sort="Demsky, Brian" uniqKey="Demsky B" first="Brian" last="Demsky">Brian Demsky</name>
<affiliation><wicri:noCountry code="subField">Irvine</wicri:noCountry>
</affiliation>
</author>
<author><name sortKey="Dash, Alokika" sort="Dash, Alokika" uniqKey="Dash A" first="Alokika" last="Dash">Alokika Dash</name>
<affiliation><wicri:noCountry code="subField">Irvine</wicri:noCountry>
</affiliation>
</author>
</analytic>
<monogr></monogr>
<series><title level="s">Lecture Notes in Computer Science</title>
<imprint><date>2008</date>
</imprint>
<idno type="ISSN">0302-9743</idno>
<idno type="eISSN">1611-3349</idno>
<idno type="ISSN">0302-9743</idno>
</series>
</biblStruct>
</sourceDesc>
<seriesStmt><idno type="ISSN">0302-9743</idno>
</seriesStmt>
</fileDesc>
<profileDesc><textClass><keywords scheme="Teeft" xml:lang="en"><term>Active task invocations</term>
<term>Agexp</term>
<term>Benchmark</term>
<term>Bristlecone</term>
<term>Bristlecone compiler</term>
<term>Bristlecone language</term>
<term>Bristlecone runtime</term>
<term>Bristlecone version</term>
<term>Bristlecone versions</term>
<term>Browser</term>
<term>Chat room</term>
<term>Chat server</term>
<term>Conceptual operations</term>
<term>Conceptual state</term>
<term>Crawler</term>
<term>Data dependences</term>
<term>Data structures</term>
<term>Demsky</term>
<term>Developer</term>
<term>Failure injection code</term>
<term>Failure injection strategy</term>
<term>Functionality</term>
<term>Guard expression</term>
<term>Incoming connection</term>
<term>Incoming connections</term>
<term>Initialized</term>
<term>International conference</term>
<term>Invocation</term>
<term>Iterators</term>
<term>Java</term>
<term>Java version</term>
<term>Java versions</term>
<term>Logger</term>
<term>Logger object</term>
<term>Logrequest</term>
<term>Logrequest task</term>
<term>Multiple implementations</term>
<term>Object iterators</term>
<term>Other tasks</term>
<term>Parameter</term>
<term>Parameter objects</term>
<term>Parameter sets</term>
<term>Programming language</term>
<term>Programming languages</term>
<term>Query</term>
<term>Query object</term>
<term>Queue</term>
<term>Readrequest</term>
<term>Readrequest task</term>
<term>Robust</term>
<term>Robust software systems</term>
<term>Runtime</term>
<term>Runtime system</term>
<term>Same connection</term>
<term>Sendpage</term>
<term>Sendpage task</term>
<term>Server</term>
<term>Server example</term>
<term>Serversocket</term>
<term>Serversocket object</term>
<term>Socket object</term>
<term>Software</term>
<term>Software engineering</term>
<term>Software errors</term>
<term>Software faults</term>
<term>Software system</term>
<term>Software systems</term>
<term>Startup</term>
<term>Startup task</term>
<term>Tagname</term>
<term>Task declarations</term>
<term>Task invocation</term>
<term>Task invocations</term>
<term>Task queue</term>
<term>Transactional</term>
<term>Webrequest</term>
<term>Webrequest object</term>
<term>Workload</term>
</keywords>
</textClass>
<langUsage><language ident="en">en</language>
</langUsage>
</profileDesc>
</teiHeader>
<front><div type="abstract" xml:lang="en">Abstract: We present Bristlecone, a programming language for robust software systems. Bristlecone applications have two components: a high-level organization description that specifies how the application’s conceptual operations interact, and a low-level operational description that specifies the sequence of instructions that comprise an individual conceptual operation. Bristlecone uses the high-level organization description to recover the software system from an error to a consistent state and to reason how to safely continue the software system’s execution after the error. We have implemented a compiler and runtime for Bristlecone.We have evaluated this implementation on three benchmark applications: a web crawler, a web server, and a multi-room chat server. We developed both a Bristlecone version and a Java version of each benchmark application. We used injected failures to evaluate the robustness of each version of the application. We found that the Bristlecone versions of the benchmark applications more successfully survived the injected failures.</div>
</front>
</TEI>
<affiliations><list></list>
<tree><noCountry><name sortKey="Dash, Alokika" sort="Dash, Alokika" uniqKey="Dash A" first="Alokika" last="Dash">Alokika Dash</name>
<name sortKey="Demsky, Brian" sort="Demsky, Brian" uniqKey="Demsky B" first="Brian" last="Demsky">Brian Demsky</name>
</noCountry>
</tree>
</affiliations>
</record>
Pour manipuler ce document sous Unix (Dilib)
EXPLOR_STEP=$WICRI_ROOT/Wicri/Sarre/explor/MusicSarreV3/Data/Main/Exploration
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000760 | SxmlIndent | more
Ou
HfdSelect -h $EXPLOR_AREA/Data/Main/Exploration/biblio.hfd -nk 000760 | SxmlIndent | more
Pour mettre un lien sur cette page dans le réseau Wicri
{{Explor lien |wiki= Wicri/Sarre |area= MusicSarreV3 |flux= Main |étape= Exploration |type= RBID |clé= ISTEX:563DA7D516DC4282C201CD70161528738EF969FA |texte= Bristlecone: A Language for Robust Software Systems }}
This area was generated with Dilib version V0.6.33. |